November 6th, 2025 (A)
v251106A
DISCLAMER: provided AS IS and remember, this was designed/modified for MY personal use, based on my wants, needs and/or preferences without any intention of getting any compensation for it, so, if you feel generous, please, donate to a charity of your choice!
This is not (all) my work and credit should be given to a lot of people that has participated. I just added a little bit of my on code and hacked into the existing work, in ways that will make people cringe (including myself!).
Draken35

SUPPORT: NONE! You are on your own. I MIGHT answer questions and entertain request and will fix bugs based in my availability and NEEDS and WANTS.

CREDITS: 
   @Binary(DCS forums) for Scratchpad base code
   @docbrownd (Github/Scratchpad plus) for the code to load coordinates.
   @SPAS79 (DCS forums) for the UH-60 code


SPECIAL THANKS:
   @Recluse, for taking upon himself the task of providing support in the forums and testing!

IMPORTANT: CPU cycles are precious, so they are not wasted doing validations of anything. Crap, in -> Crap out. Make sure of your inputs before loading waypoints.

IPORTANT 2: This script just automates the pressing of keys, it cannot and will not do anything that cannot be done from the cockpit.

Line formats:
- Waypoint Sequence Start (WSS):    
@<#>

This is used to modify the startup waypoint for the load in the AV-8B and F-15E. 
The last one in the file is the one that will be used.

- Captured coordinates 
This was modified to be used as an extension. There are 2 available: Original(disabled) and Compact (shown and active)
------------------------------
N 41°39(.650)'38", E 041°50(.063)'03"
37 T GG 35990 16001 / 750m, 2462ft

- Captured coordinates to be loaded (DDM example)
@|#|N 41°39.650'|E 041°50.063'|2462|

The # is called the "designation" (WDes) of the waypoint, and can be used to specified an specific waypoint number for the AV-8B or F-15E

- F-15E
Set the UFC to Menu1, then press "Load Wpnt" in Scratchpad.

Waypoint Sequence Start can be used to specify a startup waypoint and route. Default is 1A (important: steeporing 1A is currently read only and cannot be modified in the jet) and, if the route is not specified, route A is assumed.

Examples:
Set WSS to point 2 of route A:  @<2A>
Set WSS to point 1 of route C:  @<1C>

Waypoint Designation (WDes). If # is present then Scratchpad will attempt to load the steerpoint in next point in the sequence for the active route, otherwise it will use the value as the waypoint or target number in the specified route. It can be used to designate a target point. Important: F-15E waypoint creation rules are followed.

Examples:
@|#|N 41°39.650'|E 041°50.063'|2462| -> will load in the next point of the sequence/route

@|#.|N 41°39.650'|E 041°50.063'|2462| -> will load in the next TARGET point of the sequence/route

@|5B|N 41°39.650'|E 041°50.063'|2462| -> will attempt to load the point in 5B

@|3.A|N 41°39.650'|E 041°50.063'|2462| -> will attempt to load a target point 


- AV-8B (Now uses DDM)
Waypoint Sequence Start can be used to specify a startup waypoint and route. Default is 1
Examples:
Set WSS to point 3 :  @<3>

Waypoint Designation (WDes). If # is present then Scratchpad will attempt to load the steerpoint in next point in the sequence , otherwise it will use the value as the waypoint number. If that waypoint already exist, it will override it, if not it will attempt to create it. Important: AV-8B waypoint creation rules are followed. (WDes) can be used to override an existing waypoint (if it does not exist a new one will be created at the end of the sequence, its number might not match the WDes). Also, it can be use to create or modify target points 

Examples:
@|3|N 41°39.150'|E 041°50.451'|2462| -> will load in the point No.3 (if exists, if not a WP will be created and the end of the sequence)
@|T3|N 41°39.150'|E 041°50.451'|2462| -> create or modify Target point 3

- AH-64D Apache
Waypoint Sequence Start: has no effect in this module

Waypoint Designation (WDes). This is used to indicate the type of the point and, optionally, add the ident for it.
Examples:
@|#| will set the point as a waypoint with a default abbreviation of 'WP'
@|W| will set the point as a waypoint with a default abbreviation of 'WP'
@|T| will set the point as a target point with a default abbreviation of 'TG'
@|H| will set the point as a hazard with a default abbreviation of 'TU'
@|C| will set the point as a control measure with a default abbreviation of 'CP'
@|XX| will set the point as a waypoint with an abbreviation of 'XX'
@|WXX| will set the point as a waypoint with an abbreviation of 'XX'
@|TXX| will set the point as a target point with an abbreviation of 'XX'
@|HXX| will set the point as a hazard with an abbreviation of 'XX'
@|CCC| will set the point as a control measure with an abbreviation of 'XX'

Free text entry: Last token of the line allows for entering text for the free text field.
Partial support, some keys will be ignored and Apache free text rules will be follow.IE:
@|#|36SVD99742698|72|| -> no free text
@|#|36SVD99742698|72|ABC| -> 'ABC' as free text
Note: it abbreviation is not valid, the whole process will fail.

- F-16C Viper
Waypoint Sequence Start can be used to specify a startup waypoint and route. Default is 1
Examples:
Set WSS to point 3 :  @<3>

Waypoint Designation (WDes). If # is present then Scratchpad will attempt to load the steerpoint in next point in the sequence , otherwise it will use the value as the waypoint number. If that waypoint already exist, it will override it, if not it will attempt to create it. 

Examples:
@|3|N 41°36.445'|E 041°36.521'|33| -> will load in the point No.3 (if exists, if not a WP will be created and the end of the sequence)
@|#|N 41°36.445'|E 041°36.521'|33| -> will load in the next waypoint in the sequence 


- A-10C/A-10C2
CDU needs to be in the Waypoint Page before loading waypoints.
Waypoint Designation (WDes). If # is present then Scratchpad will attempt to load the steerpoint in next point in the sequence , otherwise it modify that WP number if it exists, if it doesn't it will error out. If a name is present in the input line and WDes is #, a new waypoint will be created with the indicated name. If WDes is a number and the name is present, Scratchpad will try to find a WP using the name first, if not found, WDes will be used. If neither is found it will error out.
Examples:
@|#|N 41°39.150'|E 041°50.451'|2462|| ->  a WP will be created and the end of the sequence
@|#|N 41°39.150'|E 041°50.451'|2462|WPNAME| ->  a WP with a name of WPNAME will be created and the end of the sequence, or, if the WP already exist, it will be modified
@|3|N 41°39.150'|E 041°50.451'|2462|| ->   WP 3, if exist, will be modified.
@|3|N 41°39.150'|E 041°50.451'|2462|WPNAME| | ->   WP WPNAME, if exist, will be modified. If not, WP 3 will be modified if exist, error otherwise


- OH-58D Kiowa Warrior
IMPORTANT: Aircraft needs to be set to work with MGRS coordinates.
NOTE: In MP, the script should use the MFD corresponding to the seat of the crew member loading the waypoints. This is untested at the moment.
Waypoint Sequence Start: has no effect in this module

Waypoint Designation (WDes). This is used to indicate the type of the point.
Examples:
@|#| ...  will add the next Waypoint in the aircraft sequence 
@|W| ...  will add the next Waypoint in the aircraft sequence 
@|C| ...  will add the next Control point in the aircraft sequence 
@|T| ...  will add the next Target point in the aircraft sequence 
@|3| ...  will add or edit  Waypoint 3 
@|3W| ...  will add or edit  Waypoint 3 
@|3C| ...  will add or edit  Control point 3 
@|3T| ...  will add or edit  Target point 3 


-- F/A-18C Hornet,  Mirage M-2000C, Mirage F1EE
WSS and WDes currently have no function and the load sequence will start (and override) the currently selected waypoint. The Honet needs to be to precise coordinates before loading.

-- CH-47F Chinook
IMPORTANT: Waypoint load order is reversed (last WP is loaded first)
Initial basic deployment, only functionality available is than loading WPs in order.

- Gazelle
Waypoint Sequence Start can be used to specify a startup waypoint and route. Default is 1
Examples:
Set WSS to point 3 :  @<3>

Waypoint Designation (WDes). If # is present then Scratchpad will attempt to load the steerpoint in next point in the sequence , otherwise it will use the value as the waypoint number. If that waypoint already exist, it will override it, if not it will attempt to create it. 

Examples:
@|3|N 41°36.4'|E 41°36.5'|33| -> will load in the point No.3 (if exists, if not a WP will be created and the end of the sequence)
@|#|N 41°36.4'|E 41°36.5'|33| -> will load in the next waypoint in the sequence 

-- UH-60 Thanks to SPAS79 -- 09/14/25 Support for UH-60L mod 2.0 added. Prior version deprecated.
https://youtu.be/1WQzyASjJvY
https://github.com/SPAS79/dcs-scratchpad

-- Ka-50 Blackshark  
PVI-800 ONLY
WSS applies to Nav-Target points ONLY
There is no validation on the quantity / number of points per type.
The load sequence is reset to 1 for Nav-Target points every time the Load Wpnt button is pressed.

WDes:
@|#| ...  will load/replace  the next Nav Target point in the load sequence 
@|T| ...  will load/replace  the next Nav Target point in the load sequence 
@|N| ...  will load/replace  the next Nav point in the load sequence 
@|A| ...  will load/replace  the next Airfield point in the load sequence 
@|F| ...  will load/replace  the next Fix point in the load sequence 
@|#| ...  WHEN # IS A NUMBER from 1 to 9  will load/replace Nav Target point number (#)
@|T#| ... WHEN # IS A NUMBER from 1 to 9   will load/replace Nav Target point number (#)
@|N#| ... WHEN # IS A NUMBER from 1 to 9   will load/replace Nav point  number (#)
@|A#| ... WHEN # IS A NUMBER from 1 to 9   will load/replace Airfield point  number (#)
@|F#| ... WHEN # IS A NUMBER from 1 to 9   will load/replace Fix point  number (#)

-- AJS-37 Viggen
Only B & M waypoints can be added. Bearing and range for offset points can be manually added.
Waypoint Sequence Start can be used to specify a startup waypoint and route. Default is 1
Examples:
Set WSS to point 3 :  @<3>
@|#| ...  will load/replace  the next B point in the load sequence 
@|B| ...  will load/replace  the next B point in the load sequence 
@|M| ...  will load/replace  the next M point in the load sequence 
@|B3| ...  will load/replace B3 point 
@|#|N 41°36'41"|E 44°33'51"||| -> will load the coordinates in the next waypoint in the sequence 
@|#|N 41°36'41"|E 44°33'51"|180|10| -> will load the coordinates in the next waypoint in the sequence with an offset of 180° at 10km




-- Multicrew aircrafts 
In Single player and multiplayer with one player in the aircraft, the coordinates will be loaded from the pilot seat.
In Multiplayer, with multiple players in the aircraft, the coordinates will be loaded from the seat that is usign Scratchpad